package com.jiangjiang.eshop.promotion.service;

import com.jiangjiang.eshop.order.dto.CouponDTO;
import com.jiangjiang.eshop.promotion.dto.PromotionActivityDTO;

import java.util.List;

/**
 * @ClassName PromotionFacadeService
 * @Description TODO
 * @Author jhw
 * @Date 2021/5/24 22:54
 * @Version 1.0
 **/
public interface PromotionFacadeService {

    /**
     * 根据商品id 查询促销活动
     * @param goodsId 商品id
     * @return 促销活动
     */
    List<PromotionActivityDTO> listByGoodsId(Long goodsId);

    /**
     * 根据id查询优惠活动
     * @param id
     * @return
     */
    PromotionActivityDTO queryById(Long id);

    /**
     * 查询用户当前可以使用的有效优惠券
     * @param userAccountId 用户账号id
     * @return 有效优惠券
     */
    List<CouponDTO> listValidByUserAccountId(Long userAccountId);

    /**
     * 使用优惠券
     * @param couponId 优惠券id
     * @param userAccountId 用户账号id
     * @return 处理结果
     */
    Boolean useCoupon(Long couponId, Long userAccountId);
}
